import re
# （1）使用X*来匹配出一个字符串：第1个字母为大小写字母，后面都是小写字母且这些字母可有可无；
# result = re.match('\w*', '').group()
# print(result)
# （2）通过X+来匹配一个具有数字、大小写字母、下划线的字符串；
# result = re.match('\w+', 'Afdssfdsf').group()
# print(result)
# （3）通过X?来匹配0到99之间的任意数字；
# result = re.match("[0-9][0-9]?", "1").group()
# result = re.match("[0-9][0-9]?", "99").group()
# result = re.match("[0-9][0-9]?", "100").group()
# result = re.match("[1-9]?[0-9]", "0").group()
# result = re.match("[1-9]?[0-9]", "09").group()
# print(result)
# （4）通过X{n,m}匹配出5到16位的密码，可以是大小写英文字母、数字、下划线。
result = re.match("[a-zA-Z0-9_]{5,16}", "df12312a").group()
print(result)